// 用户注册
var registerPage = (function(register) {
  var VUE = {};// Vue命名空间
  var i = 60;// 倒计时
  var isclick= true; // 倒计时防重复提交
  VUE.InitPage = function Init() {
    var registerVm = new Vue({
      el : '#registerModel',
      data : {
        mobile : LANTCommon.Str.Empty(),
        password : LANTCommon.Str.Empty(),
        confirmPassword : LANTCommon.Str.Empty(),
        vercode : LANTCommon.Str.Empty(),
        userName : LANTCommon.Str.Empty()
      },
      methods : {
        registerUser : function(){
          var mobile = this.mobile;
          var password = this.password;
          var confirmPassword = this.confirmPassword;
          var vercode = this.vercode;
          var userName = this.userName;
          if(!this.verifyMobile(mobile)){
            layer.msg("请输入正确的手机号", {
              icon : 5
            });
            return;
          }
          
          if(!this.checkData(mobile, 2)){
            return;
          }
          
          if(!this.checkVerify(vercode)){
            layer.msg("验证码必填", {
              icon : 5
            });
            return;
          }
          
          if (!this.verifyPassword(password)) {
            layer.msg("密码必须6到30位，且不能出现空格", {
              icon : 5
            });
            return;
          }
          
          if (confirmPassword!=password) {
            layer.msg("两次密码输入不一致", {
              icon : 5
            });
            return;
          }
          
          if (userName=="") {
            layer.msg("请输入正确的用户名", {
              icon : 5
            });
            return;
          }
          
          if(!this.checkData(userName, 1)){
            return;
          }
          
          if(!$('[name="agreement"]').is(':checked')){
            layer.msg("你必须同意用户协议才能注册", {
              icon : 5
            });
            return;
          }
          
          $.ajax({
            async : false,
            type : 'post',
            url : '/lant/user/save',
            data : {
              mobile : mobile,
              password : password,
              confirmPassword : confirmPassword,
              vercode : vercode,
              userName : userName,
            },
            success : function(result) {
              if (LANTCommon.OK == result.status) {
                layer.msg("恭喜您，注册成功！", {
                  icon : 1
                });
                
                window.location.href = '/lant/page/login';
                return
              } else {
                layer.msg(result.msg, {
                  icon : 5
                });
              }
            }
          });
        },
        getSmsCode : function() {
          var mobile = this.mobile;
          if(!this.verifyMobile(mobile)){
            layer.msg("请输入正确的手机号", {
              icon : 5
            });
            return;
          }
          
          // 调取发送短信接口
          var resultFlag = false; 
          $.ajax({
            async : false,
            type : 'post',
            url : '/lant/getSMSVerify',
            data : {
              mobile : mobile,
            },
            success : function(result) {
              if (LANTCommon.OK == result.status) {
                resultFlag = true;
              } else {
                layer.msg(result.msg, {
                  icon : 5
                });
              }
            }
          });
          // 短信发送成功
          if(isclick && resultFlag){            
            this.timeCountDown();
          }
        },
        timeCountDown : function() {
          // 倒计时
          isclick= false;
          t = setInterval(function() {
            isclick = true,
            i--,
            i < 0 ? ($("#LAY-user-getsmscode").removeClass("layui-disabled").attr("disabled", false).html("获取验证码"), i = 60, clearInterval(t)) : ($("#LAY-user-getsmscode").addClass("layui-disabled").attr("disabled", true).html(i + "秒后重获"))
          }, 1e3)
        },
        checkVerify : function(vercode) {
          // 验证验证码
          if(vercode==""){
            return false;
          }
          
          return true;
        },
        checkData : function(content, type){
          var checkResult = false;
          $.ajax({
            async : false,
            type : 'post',
            url : '/lant/user/checkData',
            data : {
              content : content,
              type : type,
            },
            success : function(result) {
              if (LANTCommon.OK == result.status) {
                if(result.data==true) {
                  checkResult = true;
                } else {
                  if(type==1){
                    layer.msg("该用户名已存在", {
                      icon : 5
                    });
                  } else if(type==2){
                    layer.msg("该手机号码已存在", {
                      icon : 5
                    });
                  }
                }
              } else {
                layer.msg(result.msg, {
                  icon : 5
                });
              }
            }
          });
          
          return checkResult;
        },
        verifyMobile : function(mobile) {
          // 验证手机号格式
          var pattern = /^1[3456789]\d{9}$/;;
          return pattern.test(mobile);
        },
        verifyPassword : function(password) {
          // 验证密码格式
          var pattern = /^[0-9a-zA-Z_@]{6,30}$/;
          return pattern.test(password);
        },
      }
    });
  };

  register.VUE = VUE;
  return register;
})(registerPage || {});
